home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 128 42
/
q42.d81
/
t.maze master
< prev
next >
Wrap
Text File
|
2022-08-28
|
8KB
|
158 lines
M A Z E M A S T E R 1 2 8
Program and Text by John Murphy
PROLOGUE
--------
I've always liked mazes. My first computer was a VIC 20 and my favorite
game on the VIC was called Hidden Maze. It was a type-in program by Gary
Boden that was published in Compute! magazine. The objective was to escape
from the center of an on-screen maze where you could only see the "walls"
as you moved through the maze.
My friends at that time all had Atari 2600s and there was a friendly
rivalry over which system had the best games. One time we had a party at my
house and a friend brought along his Atari. I broke out my VIC with Hidden
Maze on it. Pretty soon, no one was playing the Atari and everyone was
standing in line to try out the game on my VIC.
The VIC has a small screen: 22 characters by 23 lines. I always
wondered what it would be like to play Hidden Maze on a larger screen. I
graduated from the VIC to a C64 in 1983, but I never got around to
translating the program for the C64.
I picked up a C128 in the early 90s. I had been away from Commodore
computers for quite a while, but I was fascinated by the 80-column screen
and CP/M on the 128. I was determined to translate some of my favorite maze
games to the 128 in the 80-column mode. Unfortunately, most maze games
depend on PEEKs and POKEs to screen memory. I quickly found out that you
couldn't use PEEK or POKE with the 80-column screen on the 128. This was
pretty disappointing so I ended up shelving the project, and ultimately my
128, for a few years.
Sometime in 1995 I rediscovered my C128 and the thriving CBM culture on
the Internet. I joined the Main Line Commodore User Group, discovered
LOADSTAR and ended up subscribing to both the 64 and 128 versions. In issue
#35 of the LOADSTAR 128 Quarterly, Fender published an update to CONTROL
80. I think that he published it in hopes of getting more card games that
used the mouse. However, I was excited to find that it included PEER and
POST, commands that worked like PEEK and POKE, except that they worked with
the 80-column screen. I dug out my old notes and started working again. The
result is Maze Master 128.
THE GAME
--------
Maze Master 128 creates three types of on-screen mazes: Normal, Hidden,
and Invisible. The Normal maze creates the maze on the screen and gives you
a "bird's eye" view of the maze. Your character is placed in the center and
you need to get to the top left corner to escape. You can use either a
joystick or the CRSR keys to move your character through the maze. While
the game is playable with the CRSR keys, it is much more enjoyable to use a
joystick.
Maze Master 128 is basically a race against time. When you reach the
exit the program displays how much time it took you to escape from the
maze. The default best time is 999 seconds, which you'll undoubtedly beat,
so your score will be remembered as the best score on that particular maze.
If you press the firebutton or RETURN, you'll start the exact same maze
over. If you can beat your previous best score, the new score will become
the best score. The maze stays current until you (a) go back to the menu,
(b) press 'N' for New, or (c) leave the program.
FENDER'S NOTE: I couldn't help but add another feature that you may or may
not like. I noticed in the Hidden Maze mode that it was a challenge not
only to beat the clock, but also to try to solve the maze and in doing so,
"light up" as few wall pieces as possible. In other words, solve the maze
without going off on too many wrong paths. The smaller the number, the
better the score. I wrote a slow BASIC routine that counted the lit wall
pieces, but when I sent John a copy he wisely wrote a Machine Language
routine that did the job quickly.
When a maze is solved, start a brand new maze by pressing 'N' instead
of RETURN. You may also return to the menu by pressing 'M' or quit to
LOADSTAR 128 by pressing 'Q'.
The Hidden maze adds a twist to the game. Your character is once again
placed in the center of the maze, only this time you can only see the part
of the maze that currently surrounds you. It simulates what you would see
if you were standing in the maze and holding up a lantern to look around
you. As you move through the maze more of it is revealed to you, one step
at a time. There is a "cheat" mode where you can press either the fire
button on the joystick or the SPACE bar to display the whole maze at once.
The display flashes onto the screen for a few seconds and then reverts to
the original screen. As a penalty for "cheating" your character is
paralyzed for a few seconds after the screen returns to normal. This means
that you will lose 5 or 6 seconds every time you use the cheat mode.
The Invisible maze is not for people who are easily frustrated. Once
again your character is placed in the center of maze, but this time there
is no light to guide you. You have to stumble around in the darkness,
trying to find your way out. The same cheat mode is available in this maze,
and you will probably need it.
All of the mazes have a demo mode. You can press 'D' at any time to
have your character escape the maze on its own. If you have a SuperCPU you
can press 'F' to have your character escape at an accelerated pace. If you
don't have a SuperCPU pressing 'F' works the same as pressing 'D'.
HINTS AND TIPS
--------------
You might want to practice with a few Normal mazes to get the hang of
things before attempting either the Hidden or Invisible mazes.
The algorithm that generates the maze tends to create mazes that can be
solved by moving in a clock-wise direction.
As you move through the maze, right-hand branches are usually the ones
to take.
You can pick up a little speed in corners by moving the joystick
towards the diagonal. For example, northwest instead of west then north.
My best time was 9 seconds to escape. This was a Hidden maze with the
SuperCPU on. My worst time was 4 minutes and 31 seconds in the Invisible
maze. Your mileage may vary...
THE PROGRAM
-----------
The program uses a machine language routine to generate the mazes. I
adapted it from a routine in Compute!'s Machine Language Routines for the
Commodore 64. The routine was originally written for the PET and the VIC 20
by Gary E. Marsa and adapted to the C64 by Gregg Peele. The Hidden maze
logic is patterned after the Hidden Maze game for the VIC 20 by Gary Boden.
All of the screen manipulation is done using Control 80-C.
If you are interested in writing your own 80 column maze programs I
have included a barebones, 80 column maze-generating program called "Maze
80". It will generate and display a maze on the 80 column mode screen and
has basic keyboard and joystick functionality. If you are interested in how
it works, please read the article that accompanies the program.
FENDER'S POSTMUMBLE: This is a great program. As I was testing it, I kept
playing the same level over and over, trying to make a flawless run. Never
did, of course. For pure competitive fun, either against friends or against
yourself, MAZE MASTER 128 is a masterpiece.
John Murphy has done what I should do more, and you should, too: scout out
the ingenious little programs/routines of the past and make wonderful works
of computer art out of them, worthy of the 21st Century. Ian Adam made a
Commodore career out of doing it, as you can see by getting THE COMPLEAT
IAN, and now John is following in his footsteps. Bravo!
If you send me a program that's as addictive and fun and classy as this,
it will get published.
\\\\\ R - Run RETURN - Menu \\\\\